﻿using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using DAL;
using Business.Classes;

namespace UI
{
    public partial class incluirPatrocinio : System.Web.UI.Page
    {
        Usuario user;
        Imagem imagem;
        protected void Page_Load(object sender, EventArgs e)
        {
            user = (Usuario)Session["user"];
            if (user == null)
            {
                Response.Redirect(new Controlador.Controladora().GetPageLogin());
            }
        }

        protected void btInserir_Click(object sender, EventArgs e)
        {
            try
            {
                pnFalha.Visible = false;
                pnSucesso.Visible = false;

                //Imagem
                if (fupImage.HasFile)
                {
                    string imageType = fupImage.PostedFile.FileName;
                    if (new PostNewBusiness().permiteImagem(imageType.Substring(imageType.LastIndexOf(".") + 1, 3)))
                    {
                        long tamanho = Convert.ToInt32(fupImage.PostedFile.InputStream.Length);
                        Byte[] vetor = new Byte[tamanho];
                        fupImage.PostedFile.InputStream.Read(vetor, 0, vetor.Length);

                        imagem = new Imagem()
                        {
                            imagem = vetor,
                            ImagemTamanho = tamanho,
                            imagemTitulo = fupImage.PostedFile.FileName,
                            imagemTipo = fupImage.PostedFile.ContentType
                        };

                        new ImagemBusiness().insertImagem(imagem);
                    }
                    else
                    {
                        pnFalha.Visible = true;
                        lbMsgFalha.Text = "Somente são suportados arquivos nos formatos: gif, bmp, png ou jpg.";
                        return;
                    }
                }

                Propaganda propaganda = new Propaganda()
                {
                    titulo = txtTitulo.Text,
                    descricao = txtDescricao.Text,
                    idUsuario = user.idUsuario,
                    Imagem = imagem
                };
                PropagandaBusiness business = new PropagandaBusiness();
                business.InsertPropaganda(propaganda);

                pnSucesso.Visible = true;
                lbMsgSucesso.Text = "Propaganda inserida com sucesso!";
            }
            catch (Exception ex)
            {
                pnFalha.Visible = true;
                lbMsgFalha.Text = "Erro ao inserir propaganda. Detalhe: " + ex.Message;
            }
        }

        protected void btBack_Click(object sender, EventArgs e)
        {
            Response.Redirect(new Controlador.Controladora().GetManterPatrocinio());
        }
    }
}
